package com.qinggeng.project.system.service;

import com.qinggeng.project.api.dto.PositionDto;
import com.qinggeng.project.system.domain.Position;

import java.util.List;

public interface IPositionService {

    /**
     * 新增职位
     * @param position
     * @return
     */
    boolean insertPosition(Position position);

    /**
     * 根据Id删除职位
     * @param id
     * @return
     */
    boolean deletePositionById(Long id);

    /**
     * 批量删除职位
     * @param ids
     * @return
     */
    int deletePositionByIds(Long[] ids);

    /**
     * 更新职位
     * @param position
     * @return
     */
    boolean updatePosition(Position position);

    public boolean checkPosition(Position position) ;

    /**
     * 查询职位集合
     * @param where
     * @return
     */
    List<PositionDto> listPositionDto(Position where);

    /**
     *
     * @return
     */
    List<PositionDto> listCollectPositionDto();

    List<PositionDto> listBrowsePositionDto();

    /**
     * 查询职位集合
     * @param where
     * @return
     */
    List<Position> listPosition(Position where);




    /**
     * 根据Id查询职位
     * @param id
     * @return
     */
    PositionDto getPositionDtoById(Long id);

    /**
     * 根据Id查询职位
     * @param id
     * @return
     */
    Position getPositionById(Long id);

    /**
     * 根据Id获取岗位浏览次数
     * @param id
     * @return
     */
    Integer getPositionBrowseCountById(Long id);

    /**
     * 根据用户Id获取用户岗位收藏数量
     * @return
     */
    Integer getPositionCollectCountByUserId();

    /**
     * 根据Id和用户Id查询职位
     * @param id
     * @param
     * @return
     */
    Position getPositionByIdAndJobUserId(Long id);

    /**
     * 获取职位联系电话
     * @param id
     * @return
     */
    String getPositionPhoneNumber(Long id);
}
